package com.power.sifa.correction.api;

import com.plf.common.domain.ResponseDTO;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import com.power.sifa.correction.model.Cre_warning;
import com.power.sifa.correction.model.pageInfo.Cre_warningPageInfo;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 *  预警信息 Feign
 */
public interface ICre_warningFeign {

    /**
     * 预警信息分页列表
     */
    @PostMapping("/cre_warning/list")
    ResponseDTO list(@RequestBody Cre_warningPageInfo cre_warningPageInfo);

    /**
    * 查看预警信息
    */
    @GetMapping("/cre_warning/view")
    ResponseDTO view(@RequestParam("id") String id);

    /**
    * 删除预警信息
    */
    @PostMapping("/cre_warning/delete")
    ResponseDTO delete(@RequestParam("id") String id);

    ///**
    // * 查看预警信息 复合主键使用
    // */
    //@PostMapping("/cre_warning/viewByPK")
    //ResponseDTO viewByPK(@RequestBody Cre_warning.Cre_warningPK pk);

    /**
     * 修改或保存预警信息
     */
    @PostMapping("/cre_warning/save")
    ResponseDTO save(@RequestBody Cre_warning  cre_warning);

    ///**
    // * 删除预警信息 复合主键使用
    // */
    //@PostMapping("/cre_warning/deleteByPK")
    //ResponseDTO deleteByPK(@RequestBody Cre_warning.Cre_warningPK pk);

    /**
     * 批量删除预警信息
     */
    @PostMapping("/cre_warning/batchDel")
    ResponseDTO batchDel(@RequestParam("ids") String ids);

     /**
     * 导出excel
     */
    @PostMapping("/cre_warning/output")
    void output(HttpServletResponse response, @RequestBody Cre_warningPageInfo cre_warningPageInfo);

     /**
     * 导出excel模板
     */
    @PostMapping("/cre_warning/exportExcelTemplate")
    void exportExcelTemplate(HttpServletResponse response);

     /**
     *	导入excel
     */
    @PostMapping("/cre_warning/importExcel")
    ResponseDTO importExcel(@RequestBody MultipartFile file) throws IOException ;

    /**
     *	预警信息关联查询数据
     */
    @PostMapping("/cre_warning/queryList")
    ResponseDTO queryList(@RequestBody Cre_warningPageInfo pageInfo);

    /**
     *	根据人员id查询预警记录
     */
    @PostMapping("/cre_warning/findListByPerid")
    ResponseDTO findListByPerid(String perid);

    /**
     * 查看历史预警
     */
    @PostMapping("/cre_warning/historicalWarning")
    ResponseDTO historicalWarning(@RequestBody Cre_warningPageInfo pageInfo);

}
